package com.enjoyor.soa.traffic.api.service.dubbo.bigdata;

import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

/**
 * 拥堵实时分析服务接口
 * <p>
 * Title:
 * </p>
 * DubboCongestRealTimeService
 * <p>
 * Description:
 * </p>
 *
 * @author Administrator
 * @date 2018年4月4日上午9:01:06
 */
public interface DubboCongestRealTimeService {
    /***************************
     * 拥堵实时分析 - 实时拥堵指数
     **********************************************/
    /**
     * 获取实时拥堵分析-指数展示信息
     *
     * @return 包括实时拥堵指数、早高峰拥堵指数、晚高峰拥堵指数及相关比例 CRTRealTimeCongestDto
     */
    ResultPojo getRealTimeIndex(String token);

    /**
     * 获取实时拥堵-<今日指数趋势>-查询
     *
     * @return List<CRTCongestTrendDto> 时间及对应指数集合
     */
    ResultPojo getTodayIndexTrend(String token);

    /**
     * 获取实时拥堵-<前一日指数趋势>-查询
     *
     * @return List<CRTCongestTrendDto> 时间及对应指数集合
     */
    ResultPojo getYesterdayIndexTrend(String token);

    /**
     * 获取实时拥堵-<上周同期指数趋势>-查询
     *
     * @return List<CRTCongestTrendDto> 时间及对应指数集合
     */
    ResultPojo getLastWeekSameDayIndexTrend(String token);

    /**
     * 获取实时拥堵-<今日指数趋势预测>-查询
     *
     * @return List<CRTCongestForecastDto> 时间及对应预测指数集合
     */
    ResultPojo getTodayIndexForecast(String token);

    /***************************
     * 拥堵实时分析 - 重点区域
     **********************************************/
    /**
     * 获取实时拥堵-<重点区域指数排行榜>-查询
     *
     * @return List<CRTAreaTopDto> 时间及对应预测指数集合
     */
    ResultPojo getAreaCongestIndexTop(String token);

    /***************************
     * 拥堵实时分析 - 重点路段
     **********************************************/
    /**
     * 获取实时拥堵-<重点路段指数排行榜>-查询
     *
     * @return List<CRTRoadTopDto> 时间及对应预测指数集合
     */
    ResultPojo getRoadCongestIndexTop(String token);

    /***************************
     * 拥堵实时分析 - 实时路况
     **********************************************/
    /**
     * 获取实时拥堵-<实时路况>-查询
     *
     * @return List<CRTBaseRoadDto> 基础路段拥堵信息集合，非重点路段，无路段名称
     */
    ResultPojo getRealTimeRoadCondition(String token);

    /**
     * 获取 重点区域-今日特定区域拥堵趋势统计
     * param areaId String 区域编码
     * @return CRTCongestTrendPojo 区域_拥堵展示查询信息实体
     */
    ResultPojo  getAreaTodayCongestTrend (String areaId);

    /**
     * 获取 重点路段-今日特定路段拥堵趋势统计
     * param roadId String 路段编码
     * @return CRTCongestTrendPojo <日流量趋势>-展示查询信息实体
     */
     ResultPojo getRoadTodayCongestTrend (String roadId);
}
